import Vue from 'vue'
import App from './App.vue'
import router from './router'
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
import VueMeta from 'vue-meta'
import ConfigService from './service/ConfigService'

const vConsole = new vconsole();
export default vConsole
import vconsole from 'vconsole'

Vue.use(ElementUI);
Vue.use(VueMeta, {
  refreshOnceOnNavigation: true
});

Vue.config.productionTip = false;

import store from './stores/store'

let params = new URLSearchParams(location.search);
if (params.has("code")) {
  store.getters.setCode(params.get("code"));
}

// router.beforeEach((to, from, next) => {
//   let code = store.getters.getCode();
//   if (code && code.length>0){
//     next();
//   } else{
//     let url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=wldfc8d2cef1&redirect_uri=http://49.234.54.41:9988/wx-web&response_type=code&scope=snsapi_userinfo&agentid=1000151&state=STATE#wechat_redirect";
//     window.location.href = url;
//   }
// });

ConfigService.getConfig().then(res => {
  var data = res.data;
  wx.config({
    beta: true,// 调用wx.invoke形式的接口值时，该值必须为true。
    debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来，若要查看传入的参数，可以在pc端打开，参数信息会通过log打出，仅在pc端时才会打印。
    appId: data.appId, // 必填，企业微信的cropID
    timestamp: data.timestamp, // 必填，生成签名的时间戳
    nonceStr: data.nonceStr, // 必填，生成签名的随机串
    signature: data.signature,// 必填，签名，见附录1
    jsApiList: ['selectEnterpriseContact', 'checkIsSupportSoterAuthentication', 'checkIsSoterEnrolledInDevice', 'startSoterAuthentication', 'bioassayAuthentication'] // 必填，需要使用的JS接口列表，所有JS接口列表见附录2
  });

  wx.ready(function () {
    Vue.prototype.$wx = wx;
    ConfigService.getAgentConfig().then(rs => {
      var agentConfig = rs.data;
      var config = {
        agentid: agentConfig.agentid, // 必填，企业应用的agentid
        corpid: agentConfig.corpid,  // 必填，企业微信的corpid
        timestamp: agentConfig.timestamp, // 必填，生成签名的时间戳,int类型, 如 1539100800
        nonceStr: agentConfig.nonceStr, // 必填，生成签名的随机串
        signature: agentConfig.signature,// 必填，签名，见附录5
        jsApiList: ['selectEnterpriseContact']
      };

      wx.invoke("agentConfig", config, function (res) {
        console.log(res);
        if (res.errMsg != "agentConfig:ok") {
          //错误处理
          console.log("agentConfig初始化错误！");
          console.log(res);
          return;
        } else {
          console.log("agentConfig初始化成功！")
        }
        alert(JSON.stringify(res));
      });
    });

  });
  new Vue({
    router,
    store,
    render: h => h(App)
  }).$mount('#app');
  wx.error(function (res) {
    alert(JSON.stringify(res));
  });
});


// new Vue({
//   router,
//   store,
//   render: h => h(App)
// }).$mount('#app');
